package testes;
 
import logica.pessoa.Locador;

import org.junit.Assert;
import org.junit.Before;
import org.junit.Test;

import criptografia.Encriptador;
 
public class TestaLocador {
 
    private Locador locador;
    private Encriptador encriptador;
     
    @Before public void inicializacao() throws Exception {
       
    	locador = new Locador(); 
    	encriptador = new Encriptador();
    }
 
     
    @Test public void testLogin() throws Exception{
        try{
                 
            locador.setLogin("as");
           
            Assert.fail();
        }
        catch (Exception e) {
            Assert.assertEquals("\n \t<Login invalido!>", e.getMessage());
             
        }
         
                 
        try{
            locador.setLogin(null);
            Assert.fail();
        }
        catch (Exception e) {
            Assert.assertEquals("\n \t<Login invalido!>", e.getMessage());
             
        }

        locador.setLogin("arthurpegador");
       
        Assert.assertEquals("arthurpegador", locador.getLogin());
 
                             
    }
     
     
    @Test public void testSenha() throws Exception{
        try{
            locador.setSenha(null);
             
            Assert.fail();
        }
        catch (Exception e) {
            Assert.assertEquals("\n \t<Senha invalida!>", e.getMessage());
        }
     
     
         
        try{
            locador.setSenha("peq");
             
            Assert.fail();
        }
        catch (Exception e) {
            Assert.assertEquals("\n \t<Senha invalida!>", e.getMessage());
        }
         
        locador.setSenha("s3nh4s");
        Assert.assertEquals(encriptador.geraHashParaSenha("s3nh4s"), locador.getSenha());
    
    
        try{
        	locador.setSenha("arthurGaranhao" );
        	
        	Assert.assertEquals(encriptador.geraHashParaSenha("arthurGaranhao"), locador.getSenha());
        
        }catch (Exception e) {
			System.out.println("erro: " + e.getMessage());
		}
    }
    
} 